import java.util.ArrayList;

/**
 * @Description n个人围成一个圈，然后数数，数到第三个人就退出游戏，
 * @Author hhy
 * @Date 2020/10/26 14:36
 */
public class ThreeNum {
    public static void main(String[] args) {
        solution(5);
    }

    private static void solution(int num) {
        ArrayList<LinkedNode> list = new ArrayList<>();
        //第一步就是就是把人数都变成链表
        for (int i = 1; i <= num; i++) {
            LinkedNode node = new LinkedNode(i);
            list.add(node);
        }

        //链接个个节点
        for (int i = 1; i < list.size(); i++) {
            list.get(i-1).next = list.get(i);
        }

        //把尾节点链接到头节点，变成一个循环链表
        list.get(list.size()-1).next = list.get(0);

        LinkedNode node = list.get(0);
        while (num>1){
            node.next.next = node.next.next.next;
            node =  node.next.next;
            num--;
        }

        System.out.println(node.val);


    }


}
